<html xmlns:javaee="http://java.sun.com/xml/ns/javaee" xmlns:fo="http://www.w3.org/1999/XSL/Format">
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>attribute
          (JSF 2.1 View Declaration Language: Facelets Variant)
        </title>
<meta name="keywords" content="$title">
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
</head>
<script>
            function asd()
            {
            parent.document.title="attribute (JSF 2.1 View Declaration Language: Facelets Variant)";
            }
          </script>
<body bgcolor="white" onload="asd();">
<a name="navbar_top"></a>
<table border="0" width="100%" cellpadding="1" cellspacing="0">
<tr>
<td COLSPAN="3" BGCOLOR="#EEEEFF" CLASS="NavBarCell1"><a NAME="navbar_top_firstrow"></a>
<table BORDER="0" CELLPADDING="0" CELLSPACING="3">
<tr ALIGN="center" VALIGN="top">
<td BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    &nbsp;<a href="../overview-summary.html"><font CLASS="NavBarFont1"><b>Overview</b></font></a>&nbsp;</td><td BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    &nbsp;<a href="tld-summary.html"><font CLASS="NavBarFont1"><b>Library</b></font></a>&nbsp;</td><td BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<font CLASS="NavBarFont1Rev">&nbsp;Tag&nbsp;</font>&nbsp;</td><td BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    &nbsp;<a HREF="../help-doc.html"><font CLASS="NavBarFont1"><b>Help</b></font></a>&nbsp;</td>
</tr>
</table>
</td><td ALIGN="right" VALIGN="top" ROWSPAN="3"><em></em></td>
</tr>
<tr>
<td BGCOLOR="white" CLASS="NavBarCell2"><font SIZE="-2"></font></td><td BGCOLOR="white" CLASS="NavBarCell2"><font SIZE="-2">
                &nbsp;<a HREF="../index.html" TARGET="_top"><b>FRAMES</b></a>&nbsp;
                &nbsp;<a href="attribute.html" target="_top"><b>NO FRAMES</b></a>&nbsp;
                <script></script>
<noscript>
<a HREF="../alltags-noframe.html" TARGET=""><b>All Tags</b></a>
</noscript>
</font></td>
</tr>
</table>
<hr>
<h2>
<font size="-1">composite</font>
<br>
            Tag attribute</h2>
<hr><div class="changed_added_2_0"> <p><span class="changed_modified_2_0_rev_a changed_modified_2_1">Declares</span> an attribute that may be given to an instance of the <em>composite component</em> tag for this composite component. There may be zero or many of these inside of the <code>&lt;composite:interface</code>&gt; section. This element may be nested within other <code>&lt;composite:attribute&gt;</code> elements to convey a usage contract that includes nested properties.</p> <p>Please see <a href="tld-summary.html#composite_example">summary page</a> for a usage example.</p> <p>The <em>top level component</em> in which this element is ultimately nested must be a <code>NamingContainer</code>. There are certain component properties that must not be exposed using this element. The motivation for this restriction is that the mapping of markup attributes to component properties/attributes does not allow for these attributes to be set. The following properties must not be exposed using this element.</p> <ul> <li><p>binding</p></li> <li><p>id</p></li> <li><p>inView</p></li> <li><p>parent</p></li> <li><p>rendered</p></li> <li><p>rendererType</p></li> <li><p>transient</p></li> </ul> </div><br>
<p></p>
<hr>
<table border="1" cellpadding="3" cellspacing="0" width="100%">
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan="2"><font size="+2"><b>Tag Information</b></font></td>
</tr>
<tr>
<td>Tag Class</td><td><i>None</i></td>
</tr>
<tr>
<td>TagExtraInfo Class</td><td><i>None</i></td>
</tr>
<tr>
<td>Body Content</td><td>JSP</td>
</tr>
<tr>
<td>Display Name</td><td><i>None</i></td>
</tr>
</table>
<br>
<p></p>
<table border="1" cellpadding="3" cellspacing="0" width="100%">
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan="5"><font size="+2"><b>Attributes</b></font></td>
</tr>
<tr>
<td><b>Name</b></td><td><b>Required</b></td><td><b>Request-time</b></td><td><b>Type</b></td><td><b>Description</b></td>
</tr>
<tr valign="top">
<td>name</td><td>true</td><td>false</td><td><code>javax.el.ValueExpression</code>
<br>(<i>must evaluate to </i><code>java.lang.String</code>)
                    </td><td><div class="changed_added_2_0"> <p>The name of the attribute as it must appear on the <em>composite component tag</em> in the <em>using page</em>. If the value of the <em>name</em> attribute is equal to (without the quotes) &#8220;action&#8221;, &#8220;actionListener&#8221;, &#8220;validator&#8221;, or &#8220;valueChangeListener&#8221;, the action described in <a target="_" href="../../../javadocs/javax/faces/application/ViewHandler.html#retargetMethodExpressions(javax.faces.context.FacesContext,%20javax.faces.component.UIComponent)">ViewHandler.retargetMethodExpressions()</a> must be taken to handle the attribute. In these cases, the <code>method-signature</code> attribute, if present, must be ignored as its value is derived as described in <code>retargetMethodExpressions()</code>.</div></td>
</tr>
<tr valign="top">
<td>targets</td><td>false</td><td>false</td><td><code>javax.el.ValueExpression</code>
<br>(<i>must evaluate to </i><code>java.lang.String</code>)
                    </td><td><div class="changed_added_2_0"> <p>If this element has a <code>method-signature</code> attribute, the value of the <code>targets</code> attribute must be interpreted as a space (not tab) separated list of client ids (relative to the <em>top level component</em>) of components within the <code>&lt;composite:implementation&gt;</code> section. Space is used as the delimiter for compatibility with the IDREFS and NMTOKENS data types from the XML Schema. Each entry in the list must be interpreted as the id of an inner component to which the <code>MethodExpression</code> from the <em>composite component tag</em> in the <em>using page</em> must be applied. If this element has a <code>method-signature</code> attribute, but no <code>targets</code> attribute, the value of the <code>name</code> attribute is used as the single entry in the list. If the value of the <code>name</code> attribute is <strong>not</strong> one of the special values listed in the description of the <code>name attribute</code>, <code>targets</code> (or its derived value) need not correspond to the id of an inner component.</p> </div></td>
</tr>
<tr valign="top">
<td>targetAttributeName</td><td>false</td><td>false</td><td><code>javax.el.ValueExpression</code>
<br>(<i>must evaluate to </i><code>java.lang.String</code>)
                    </td><td><div class="changed_added_2_1"> <p>This attribute allows the name of the attribute exposed to the using page to differ from the one actually used in the implementation. For example, consider a composite component that contains two buttons, one that means "submit" and one that means "cancel". It is natural to want to declare two composite component attributes to allow these buttons to be customized, for example, "submitAction" and "cancelAction". For both of these buttons, the method expression should be retargeted to the inner button's "action" attribute. This scenario would be expressed as follows.</p> <code> &lt;cc:interface&gt;<br /> &nbsp;&nbsp;&lt;cc:attribute name="submitAction" targetAttributeName="action"<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;method-signature="java.lang.Object action()"/&gt;<br /> &nbsp;&nbsp;&lt;cc:attribute name="cancelAction" targetAttributeName="action"<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;method-signature="java.lang.Object action()"/&gt;<br /> &nbsp;&nbsp;&lt;cc:actionSource name="submitAction"/&gt;<br /> &nbsp;&nbsp;&lt;cc:actionSource name="cancelAction"/&gt; <br /> &lt;/cc:interface&gt;<br /> &lt;cc:implementation&gt;<br /> &nbsp;&nbsp;&lt;h:commandButton id="submitAction" value="submit" /&gt;<br /> &nbsp;&nbsp;&lt;h:commandButton id="cancelAction" value="cancel" /&gt;<br /> &lt;/cc:implementation&gt;<br /> </code> </div></td>
</tr>
<tr valign="top">
<td>default</td><td>false</td><td>false</td><td><code>javax.el.ValueExpression</code>
<br>(<i>must evaluate to </i><code>java.lang.String</code>)
                    </td><td><div class="changed_added_2_0"> <p>If this attribute is not required, and a value is not supplied by the page author, use this as the default value.</p></div></td>
</tr>
<tr valign="top">
<td>displayName</td><td>false</td><td>false</td><td><code>javax.el.ValueExpression</code>
<br>(<i>must evaluate to </i><code>java.lang.String</code>)
                    </td><td><div class="changed_added_2_0"> <p>The name to display in a tool palette containing this component. The value of this attribute will be set as the value for this property on the <em>composite component bean descriptor</em>.</p></div></td>
</tr>
<tr valign="top">
<td>required</td><td>false</td><td>false</td><td><code>javax.el.ValueExpression</code>
<br>(<i>must evaluate to </i><code>boolean</code>)
                    </td><td><div class="changed_added_2_0"> <p>True if the page author must supply a value for this attribute. The default value is false.</p></div></td>
</tr>
<tr valign="top">
<td>preferred</td><td>false</td><td>false</td><td><code>javax.el.ValueExpression</code>
<br>(<i>must evaluate to </i><code>boolean</code>)
                    </td><td><div class="changed_added_2_0"> <p>Is this a "preferred" component. The value of this attribute will be set as the value for this property on the <em>composite component bean descriptor</em>.</p></div></td>
</tr>
<tr valign="top">
<td>expert</td><td>false</td><td>false</td><td><code>javax.el.ValueExpression</code>
<br>(<i>must evaluate to </i><code>boolean</code>)
                    </td><td><div class="changed_added_2_0"> <p>Is this component only for expert users? The value of this attribute will be set as the value for this property on the <em>composite component bean descriptor</em>.</p></div></td>
</tr>
<tr valign="top">
<td>shortDescription</td><td>false</td><td>false</td><td><code>javax.el.ValueExpression</code>
<br>(<i>must evaluate to </i><code>java.lang.String</code>)
                    </td><td><div class="changed_added_2_0"> <p>A short description of the purpose of this component. The value of this attribute will be set as the value for this property on the <em>composite component bean descriptor</em>.</p></div></td>
</tr>
<tr valign="top">
<td>method-signature</td><td>false</td><td>false</td><td><code>javax.el.ValueExpression</code>
<br>(<i>must evaluate to </i><code>java.lang.String</code>)
                    </td><td><div class="changed_added_2_0"> <p>Declares that this attribute must be a <code>MethodExpression</code> whose method signature is described by the value of this attribute. The signature must be described using fully qualified class names wherever a type is required. This attribute is mutually exclusive with the "type" attribute. If both attributes are present, the "method-signature" attribute is ignored.</p> <p>PENDING: when this file is generated from the web-facesuicomponent_2_0.xsd, we will not need to copy the content here manually.</p> <p>Provides the signature of the Java method. The syntax of the method-signature element is as follows (taken from function-signature in web-jsptaglibrary_2_1.xsd):</p> <p>MethodSignature ::= ReturnType S MethodName S? '(' S? Parameters? S? ')'</p> <p>ReturnType ::= Type</p> <p>MethodName ::= Identifier</p> <p>Parameters ::= Parameter | ( Parameter S? ',' S? Parameters )</p> <p>Parameter ::= Type</p> <p>Where:</p> <ul> <li><p>Type is a basic type or a fully qualified Java class name (including package name), as per the 'Type' production in the Java Language Specification, Second Edition, Chapter 18.</p></li> <li><p>Identifier is a Java identifier, as per the 'Identifier' production in the Java Language Specification, Second Edition, Chapter 18.</p></li> </ul> <p>Example:</p> <p><code>java.lang.String nickName( java.lang.String, int )</code></p> </div></td>
</tr>
<tr valign="top">
<td>type</td><td>false</td><td>false</td><td><code>javax.el.ValueExpression</code>
<br>(<i>must evaluate to </i><code>java.lang.String</code>)
                    </td><td><div class="changed_added_2_0"> <p>Declares that this attribute must be a <code>ValueExpression</code> whose expected type is given by the value of this attribute. If not specified, and no "method-signature" attribute is present, <code>java.lang.Object</code> is assumed. This attribute is mutually <span class="changed_modified_2_0_rev_a">exclusive with the "method-signature" attribute. If both attributes are present, the</span> "method-signature" attribute is ignored. </p> </div></td>
</tr>
<tr valign="top">
<td>hidden</td><td>false</td><td>false</td><td><code>javax.el.ValueExpression</code>
<br>(<i>must evaluate to </i><code>boolean</code>)
                    </td><td><div class="changed_added_2_0_rev_a"> <p> The "hidden" flag is used to identify features that are intended only for tool use, and which should not be exposed to humans.</p> </div></td>
</tr>
</table>
<br>
<p></p>
<table border="1" cellpadding="3" cellspacing="0" width="100%">
<tr bgcolor="#CCCCFF" class="TableHeadingColor">
<td colspan="5"><font size="+2"><b>Variables</b></font></td>
</tr>
<td colspan="2"><i>No Variables Defined.</i></td>
</table>
<br>
<p></p>
<a name="navbar_bottom"></a>
<table border="0" width="100%" cellpadding="1" cellspacing="0">
<tr>
<td COLSPAN="3" BGCOLOR="#EEEEFF" CLASS="NavBarCell1"><a NAME="navbar_bottom_firstrow"></a>
<table BORDER="0" CELLPADDING="0" CELLSPACING="3">
<tr ALIGN="center" VALIGN="top">
<td BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    &nbsp;<a href="../overview-summary.html"><font CLASS="NavBarFont1"><b>Overview</b></font></a>&nbsp;</td><td BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    &nbsp;<a href="tld-summary.html"><font CLASS="NavBarFont1"><b>Library</b></font></a>&nbsp;</td><td BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<font CLASS="NavBarFont1Rev">&nbsp;Tag&nbsp;</font>&nbsp;</td><td BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    &nbsp;<a HREF="../help-doc.html"><font CLASS="NavBarFont1"><b>Help</b></font></a>&nbsp;</td>
</tr>
</table>
</td><td ALIGN="right" VALIGN="top" ROWSPAN="3"><em></em></td>
</tr>
<tr>
<td BGCOLOR="white" CLASS="NavBarCell2"><font SIZE="-2"></font></td><td BGCOLOR="white" CLASS="NavBarCell2"><font SIZE="-2">
                &nbsp;<a HREF="../index.html" TARGET="_top"><b>FRAMES</b></a>&nbsp;
                &nbsp;<a href="attribute.html" target="_top"><b>NO FRAMES</b></a>&nbsp;
                <script></script>
<noscript>
<a HREF="../alltags-noframe.html" TARGET=""><b>All Tags</b></a>
</noscript>
</font></td>
</tr>
</table>
<hr>
<small><i>
            Output Generated by 
            <a href="http://taglibrarydoc.dev.java.net/" target="_blank">Tag Library Documentation Generator</a>.
            </i></small>
</body>
</html>
